<!DOCTYPE HTML PUBLIC "-//ORA//DTD CD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE>[Chapter 23] 23.5 java.beans.EventSetDescriptor (JDK 1.1)</TITLE>
<META NAME="author" CONTENT="David Flanagan">
<META NAME="date" CONTENT="Thu Jul 31 16:18:26 1997">
<META NAME="form" CONTENT="html">
<META NAME="metadata" CONTENT="dublincore.0.1">
<META NAME="objecttype" CONTENT="book part">
<META NAME="otheragent" CONTENT="gmat dbtohtml">
<META NAME="publisher" CONTENT="O'Reilly &amp; Associates, Inc.">
<META NAME="source" CONTENT="SGML">
<META NAME="subject" CONTENT="Java">
<META NAME="title" CONTENT="Java in a Nutshell">
<META HTTP-EQUIV="Content-Script-Type" CONTENT="text/javascript">
</HEAD>
<body vlink="#551a8b" alink="#ff0000" text="#000000" bgcolor="#FFFFFF" link="#0000ee">

<DIV CLASS=htmlnav>
<H1><a href='index.htm'><IMG SRC="gifs/smbanner.gif"
     ALT="Java in a Nutshell" border=0></a></H1>
<table width=515 border=0 cellpadding=0 cellspacing=0>
<tr>
<td width=172 align=left valign=top><A HREF="ch23_04.htm"><IMG SRC="gifs/txtpreva.gif" ALT="Previous" border=0></A></td>
<td width=171 align=center valign=top><B><FONT FACE="ARIEL,HELVETICA,HELV,SANSERIF" SIZE="-1">Chapter 23<br>The java.beans Package</FONT></B></TD>
<td width=172 align=right valign=top><A HREF="ch23_06.htm"><IMG SRC="gifs/txtnexta.gif" ALT="Next" border=0></A></td>
</tr>
</table>

&nbsp;
<hr align=left width=515>
</DIV>
<DIV CLASS=sect1>
<h2 CLASS=sect1><A CLASS="TITLE" NAME="JNUT2-CH-23-SECT-5">23.5 java.beans.EventSetDescriptor (JDK 1.1)</A></h2>

<DIV CLASS=sect2>
<h3 CLASS=sect2><A CLASS="TITLE" NAME="JNUT2-CH-23-SECT-5.1"></A></h3>
</DIV>

<P CLASS=para>
An <tt CLASS=literal>EventSetDescriptor</tt> object is a type of
<tt CLASS=literal>FeatureDescriptor</tt> that describes a single set of
events supported by a Java bean.  A "set" of events
corresponds to the one or more methods supported by a single
<tt CLASS=literal>EventListener</tt> interface.  The <tt CLASS=literal>BeanInfo</tt> class
for a Java bean optionally creates
<tt CLASS=literal>EventSetDescriptor</tt> objects to describe the event
sets the bean supports.  Typically, only application
builders and similar tools use the <tt CLASS=literal>get</tt> and
<tt CLASS=literal>is</tt> methods of <tt CLASS=literal>EventSetDescriptor</tt> objects to
obtain the event-set description information.

<P CLASS=para>
To create an <tt CLASS=literal>EventSetDescriptor</tt> object, you must
specify the class of the bean that supports the event set, the
base name of the event set, the class of the
<tt CLASS=literal>EventListener</tt> interface that corresponds to the
event set, and the methods within this interface that are
invoked when particular events within the set occur.
Optionally, you may also specify the methods of the bean
class that are used to add and remove
<tt CLASS=literal>EventListener</tt> objects. The various constructors allow you
to specify methods by name, as
<tt CLASS=literal>java.lang.reflect.Method</tt> objects, or as
<tt CLASS=literal>MethodDescriptor</tt> objects.

<P CLASS=para>
Once you have created an <tt CLASS=literal>EventSetDescriptor</tt>, you can
use <tt CLASS=literal>setUnicast()</tt> to specify whether it represents a unicast
event and <tt CLASS=literal>setInDefaultEventSet()</tt> to specify whether
the event set should be treated as the default
event set by builder applications.  The methods of the
<tt CLASS=literal>FeatureDescriptor</tt> superclass allow additional
information about the property to be specified.

<DIV CLASS=screen>
<P>
<PRE>
public class <tt CLASS=literal>EventSetDescriptor</tt> extends FeatureDescriptor {
    // <tt CLASS=literal>Public Constructors</tt>
            public <tt CLASS=literal>EventSetDescriptor</tt>(Class <tt CLASS=literal>sourceClass</tt>, String <tt CLASS=literal>eventSetName</tt>, Class <tt CLASS=literal>listenerType</tt>,
            public <tt CLASS=literal>EventSetDescriptor</tt>'u'String <tt CLASS=literal>listenerMethodName</tt>) throws IntrospectionException;
            public <tt CLASS=literal>EventSetDescriptor</tt>(Class <tt CLASS=literal>sourceClass</tt>, String <tt CLASS=literal>eventSetName</tt>, Class <tt CLASS=literal>listenerType</tt>,
            public <tt CLASS=literal>EventSetDescriptor</tt>'u'String[] <tt CLASS=literal>listenerMethodNames</tt>, String <tt CLASS=literal>addListenerMethodName</tt>
            public <tt CLASS=literal>EventSetDescriptor</tt>'u'String <tt CLASS=literal>removeListenerMethodName</tt>) throws IntrospectionException;
            public <tt CLASS=literal>EventSetDescriptor</tt>(String <tt CLASS=literal>eventSetName</tt>, Class <tt CLASS=literal>listenerType</tt>, Method[] <tt CLASS=literal>listenerMethods</tt>,
            public <tt CLASS=literal>EventSetDescriptor</tt>'u'Method <tt CLASS=literal>addListenerMethod</tt>, Method <tt CLASS=literal>removeListenerMethod</tt>)
            public <tt CLASS=literal>EventSetDescriptor</tt>'u'throws IntrospectionException;
            public <tt CLASS=literal>EventSetDescriptor</tt>(String <tt CLASS=literal>eventSetName</tt>, Class <tt CLASS=literal>listenerType</tt>,
            public <tt CLASS=literal>EventSetDescriptor</tt>'u'MethodDescriptor[] <tt CLASS=literal>listenerMethodDescriptors</tt>, Method <tt CLASS=literal>addListenerMethod</tt>,
            public <tt CLASS=literal>EventSetDescriptor</tt>'u'Method <tt CLASS=literal>removeListenerMethod</tt>) throws IntrospectionException;
    // <tt CLASS=literal>Public Instance Methods</tt>
            public Method <tt CLASS=literal>getAddListenerMethod</tt>();
            public MethodDescriptor[] <tt CLASS=literal>getListenerMethodDescriptors</tt>();
            public Method[] <tt CLASS=literal>getListenerMethods</tt>();
            public Class <tt CLASS=literal>getListenerType</tt>();
            public Method <tt CLASS=literal>getRemoveListenerMethod</tt>();
            public boolean <tt CLASS=literal>isInDefaultEventSet</tt>();
            public boolean <tt CLASS=literal>isUnicast</tt>();
            public void <tt CLASS=literal>setInDefaultEventSet</tt>(boolean <tt CLASS=literal>inDefaultEventSet</tt>);
            public void <tt CLASS=literal>setUnicast</tt>(boolean <tt CLASS=literal>unicast</tt>);
}
</PRE>
</DIV>

</DIV>

<DIV CLASS=sect2>
<h3 CLASS=sect2><A CLASS="TITLE" NAME="JNUT2-CH-23-SECT-5.2">Hierarchy:</A></h3>

<P CLASS=para>
Object->FeatureDescriptor->EventSetDescriptor

</DIV>

<DIV CLASS=sect2>
<h3 CLASS=sect2><A CLASS="TITLE" NAME="JNUT2-CH-23-SECT-5.3">Returned By:</A></h3>

<P CLASS=para>
BeanInfo.getEventSetDescriptors(), 
SimpleBeanInfo.getEventSetDescriptors()

</DIV>

</DIV>


<DIV CLASS=htmlnav>

<P>
<HR align=left width=515>
<table width=515 border=0 cellpadding=0 cellspacing=0>
<tr>
<td width=172 align=left valign=top><A HREF="ch23_04.htm"><IMG SRC="gifs/txtpreva.gif" ALT="Previous" border=0></A></td>
<td width=171 align=center valign=top><a href="index.htm"><img src='gifs/txthome.gif' border=0 alt='Home'></a></td>
<td width=172 align=right valign=top><A HREF="ch23_06.htm"><IMG SRC="gifs/txtnexta.gif" ALT="Next" border=0></A></td>
</tr>
<tr>
<td width=172 align=left valign=top>java.beans.Customizer (JDK 1.1)</td>
<td width=171 align=center valign=top><a href="index/idx_0.htm"><img src='gifs/index.gif' alt='Book Index' border=0></a></td>
<td width=172 align=right valign=top>java.beans.FeatureDescriptor (JDK 1.1)</td>
</tr>
</table>
<hr align=left width=515>

<IMG SRC="gifs/smnavbar.gif" USEMAP="#map" BORDER=0> 
<MAP NAME="map"> 
<AREA SHAPE=RECT COORDS="0,0,108,15" HREF="../javanut/index.htm"
alt="Java in a Nutshell"> 
<AREA SHAPE=RECT COORDS="109,0,200,15" HREF="../langref/index.htm" 
alt="Java Language Reference"> 
<AREA SHAPE=RECT COORDS="203,0,290,15" HREF="../awt/index.htm" 
alt="Java AWT"> 
<AREA SHAPE=RECT COORDS="291,0,419,15" HREF="../fclass/index.htm" 
alt="Java Fundamental Classes"> 
<AREA SHAPE=RECT COORDS="421,0,514,15" HREF="../exp/index.htm" 
alt="Exploring Java"> 
</MAP>
</DIV>

</BODY>
</HTML>
